#!/usr/bin/env node

/**
 * 示例 Node.js 应用程序主文件
 * 用于 CI/CD 流程测试
 */

const http = require('http');
const port = process.env.PORT || 3000;

// 创建简单的 HTTP 服务器
const server = http.createServer((req, res) => {
  res.writeHead(200, { 'Content-Type': 'application/json' });
  res.end(JSON.stringify({
    message: 'Hello from CI-Pipe Demo!',
    timestamp: new Date().toISOString(),
    version: '1.0.0',
    environment: process.env.NODE_ENV || 'development'
  }));
});

// 启动服务器
server.listen(port, () => {
  console.log(`🚀 CI-Pipe Demo 服务器启动成功！`);
  console.log(`📡 监听端口: ${port}`);
  console.log(`🌍 访问地址: http://localhost:${port}`);
  console.log(`⏰ 启动时间: ${new Date().toISOString()}`);
});

// 优雅关闭处理
process.on('SIGTERM', () => {
  console.log('📴 收到 SIGTERM 信号，正在关闭服务器...');
  server.close(() => {
    console.log('✅ 服务器已关闭');
    process.exit(0);
  });
});

process.on('SIGINT', () => {
  console.log('📴 收到 SIGINT 信号，正在关闭服务器...');
  server.close(() => {
    console.log('✅ 服务器已关闭');
    process.exit(0);
  });
});

module.exports = server;